package com.mathmu.fetion.protocol;

import java.util.List;

import org.w3c.dom.Document;

public class FetionSip {
	static public enum MethodType {
		REGISTER,
		SERVICE,
	 	SUBSCRIPTION, 
//		NOTIFICATION,
//		INVITATION, 
		INCOMING, 
		OPTION, 
		MESSAGE,
//		SIPC_4_0,
		UNKNOWN
	}
	
	static class Header {
		String name;
		String value;
	}
	
	MethodType type;					// sip message type						  
	String from;				// sender`s fetion no ,in sip it`s "F: "  
	int sequence;				// sequence number , in sip it`s "Q: "    
	int threadCount;			// listening threads count using this sip 
	String sipuri;				// outer sipuri used when listening       
	List<Header> headers;		// some othre header list
	Document content;
	
	static public FetionSip createRegisterPackage() {
		FetionSip sipPackage = new FetionSip(MethodType.REGISTER);
		// TODO: method stub
		return sipPackage;
	}
	
	private FetionSip(MethodType type) {
		this.type = type;
	}
	
	public void addHeader(String name, String value) {
		// TODO: method stub
	}
}
